<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<head>
    <title>Reference</title>
    <link rel="stylesheet" href="../ldoc.css" type="text/css" />
</head>
<body>

<div id="container">

<div id="product">
	<div id="product_logo"></div>
	<div id="product_name"><big><b></b></big></div>
	<div id="product_description"></div>
</div> <!-- id="product" -->


<div id="main">


<!-- Menu -->

<div id="navigation">
<br/>
<h1>Duplex</h1>

<ul>
  <li><a href="../index.html">Index</a></li>
</ul>

<h2>Contents</h2>
<ul>
<li><a href="#Functions">Functions</a></li>
<li><a href="#Tables">Tables</a></li>
<li><a href="#Fields">Fields</a></li>
</ul>


<h2>Modules</h2>
<ul class="$(kind=='Topics' and '' or 'nowrap'">
  <li><a href="../modules/Duplex.Application.html">Duplex.Application</a></li>
  <li><a href="../modules/Duplex.Applications.Effect.html">Duplex.Applications.Effect</a></li>
  <li><a href="../modules/Duplex.Applications.GridPie.html">Duplex.Applications.GridPie</a></li>
  <li><a href="../modules/Duplex.Applications.Hydra.html">Duplex.Applications.Hydra</a></li>
  <li><a href="../modules/Duplex.Applications.Instrument.html">Duplex.Applications.Instrument</a></li>
  <li><a href="../modules/Duplex.Applications.Keyboard.GridLayout.html">Duplex.Applications.Keyboard.GridLayout</a></li>
  <li><a href="../modules/Duplex.Applications.Keyboard.Layouts.HarmonicLayout.html">Duplex.Applications.Keyboard.Layouts.HarmonicLayout</a></li>
  <li><a href="../modules/Duplex.Applications.Keyboard.Layouts.IsomorphicLayout.html">Duplex.Applications.Keyboard.Layouts.IsomorphicLayout</a></li>
  <li><a href="../modules/Duplex.Applications.Keyboard.Layouts.PianoLayout.html">Duplex.Applications.Keyboard.Layouts.PianoLayout</a></li>
  <li><a href="../modules/Duplex.Applications.Keyboard.html">Duplex.Applications.Keyboard</a></li>
  <li><strong>Duplex.Applications.Matrix</strong></li>
  <li><a href="../modules/Duplex.Applications.Metronome.html">Duplex.Applications.Metronome</a></li>
  <li><a href="../modules/Duplex.Applications.MidiActions.Bindings.html">Duplex.Applications.MidiActions.Bindings</a></li>
  <li><a href="../modules/Duplex.Applications.MidiActions.html">Duplex.Applications.MidiActions</a></li>
  <li><a href="../modules/Duplex.Applications.Mixer.html">Duplex.Applications.Mixer</a></li>
  <li><a href="../modules/Duplex.Applications.Mlrx.Mlrx_group.html">Duplex.Applications.Mlrx.Mlrx_group</a></li>
  <li><a href="../modules/Duplex.Applications.Mlrx.Mlrx_note.html">Duplex.Applications.Mlrx.Mlrx_note</a></li>
  <li><a href="../modules/Duplex.Applications.Mlrx.Mlrx_pos.html">Duplex.Applications.Mlrx.Mlrx_pos</a></li>
  <li><a href="../modules/Duplex.Applications.Mlrx.Mlrx_track.html">Duplex.Applications.Mlrx.Mlrx_track</a></li>
  <li><a href="../modules/Duplex.Applications.Mlrx.html">Duplex.Applications.Mlrx</a></li>
  <li><a href="../modules/Duplex.Applications.Navigator.html">Duplex.Applications.Navigator</a></li>
  <li><a href="../modules/Duplex.Applications.NotesOnWheels.html">Duplex.Applications.NotesOnWheels</a></li>
  <li><a href="../modules/Duplex.Applications.PatternCursor.html">Duplex.Applications.PatternCursor</a></li>
  <li><a href="../modules/Duplex.Applications.PatternSequence.html">Duplex.Applications.PatternSequence</a></li>
  <li><a href="../modules/Duplex.Applications.Recorder.html">Duplex.Applications.Recorder</a></li>
  <li><a href="../modules/Duplex.Applications.Repeater.html">Duplex.Applications.Repeater</a></li>
  <li><a href="../modules/Duplex.Applications.Rotate.html">Duplex.Applications.Rotate</a></li>
  <li><a href="../modules/Duplex.Applications.StepSequencer.html">Duplex.Applications.StepSequencer</a></li>
  <li><a href="../modules/Duplex.Applications.SwitchConfiguration.html">Duplex.Applications.SwitchConfiguration</a></li>
  <li><a href="../modules/Duplex.Applications.TestPad.html">Duplex.Applications.TestPad</a></li>
  <li><a href="../modules/Duplex.Applications.TrackSelector.html">Duplex.Applications.TrackSelector</a></li>
  <li><a href="../modules/Duplex.Applications.Transport.html">Duplex.Applications.Transport</a></li>
  <li><a href="../modules/Duplex.Applications.UIButtonTest.html">Duplex.Applications.UIButtonTest</a></li>
  <li><a href="../modules/Duplex.Applications.XYPad.html">Duplex.Applications.XYPad</a></li>
  <li><a href="../modules/Duplex.Automation.html">Duplex.Automation</a></li>
  <li><a href="../modules/Duplex.Browser.html">Duplex.Browser</a></li>
  <li><a href="../modules/Duplex.BrowserProcess.html">Duplex.BrowserProcess</a></li>
  <li><a href="../modules/Duplex.Canvas.html">Duplex.Canvas</a></li>
  <li><a href="../modules/Duplex.CanvasPoint.html">Duplex.CanvasPoint</a></li>
  <li><a href="../modules/Duplex.ControlMap.html">Duplex.ControlMap</a></li>
  <li><a href="../modules/Duplex.Device.html">Duplex.Device</a></li>
  <li><a href="../modules/Duplex.Display.html">Duplex.Display</a></li>
  <li><a href="../modules/Duplex.Globals.html">Duplex.Globals</a></li>
  <li><a href="../modules/Duplex.Message.html">Duplex.Message</a></li>
  <li><a href="../modules/Duplex.MessageStream.html">Duplex.MessageStream</a></li>
  <li><a href="../modules/Duplex.MidiDevice.html">Duplex.MidiDevice</a></li>
  <li><a href="../modules/Duplex.OscClient.html">Duplex.OscClient</a></li>
  <li><a href="../modules/Duplex.OscDevice.html">Duplex.OscDevice</a></li>
  <li><a href="../modules/Duplex.OscVoiceMgr.html">Duplex.OscVoiceMgr</a></li>
  <li><a href="../modules/Duplex.Preferences.html">Duplex.Preferences</a></li>
  <li><a href="../modules/Duplex.ProcessSlicer.html">Duplex.ProcessSlicer</a></li>
  <li><a href="../modules/Duplex.RoamingDSP.html">Duplex.RoamingDSP</a></li>
  <li><a href="../modules/Duplex.Scheduler.html">Duplex.Scheduler</a></li>
  <li><a href="../modules/Duplex.StateController.html">Duplex.StateController</a></li>
  <li><a href="../modules/Duplex.UIButton.html">Duplex.UIButton</a></li>
  <li><a href="../modules/Duplex.UIButtonStrip.html">Duplex.UIButtonStrip</a></li>
  <li><a href="../modules/Duplex.UIComponent.html">Duplex.UIComponent</a></li>
  <li><a href="../modules/Duplex.UIKey.html">Duplex.UIKey</a></li>
  <li><a href="../modules/Duplex.UIKeyPressure.html">Duplex.UIKeyPressure</a></li>
  <li><a href="../modules/Duplex.UILabel.html">Duplex.UILabel</a></li>
  <li><a href="../modules/Duplex.UIPad.html">Duplex.UIPad</a></li>
  <li><a href="../modules/Duplex.UIPitchBend.html">Duplex.UIPitchBend</a></li>
  <li><a href="../modules/Duplex.UISlider.html">Duplex.UISlider</a></li>
  <li><a href="../modules/Duplex.UISpinner.html">Duplex.UISpinner</a></li>
  <li><a href="../modules/Duplex.WidgetHooks.html">Duplex.WidgetHooks</a></li>
  <li><a href="../modules/Duplex.WidgetKeyboard.html">Duplex.WidgetKeyboard</a></li>
  <li><a href="../modules/Duplex.html">Duplex</a></li>
  <li><a href="../modules/main.html">main</a></li>
</ul>

</div>

<div id="content">

<h1>Module <code>Duplex.Applications.Matrix</code></h1>
<p>Take control of the pattern matrix in Renoise with the endlessly scrollable matrix application.</p>
<p>
Inheritance: <a href="../modules/Duplex.Application.html#">Duplex.Application</a> > Duplex.Application.Matrix </p>

<h3>Demonstration video</h3>

<p>See a video demonstrating this application at <a href="http://www.youtube.com/watch?v=K_kCaYV_T78">Youtube</a></p>

<h3>Changes</h3>

<p>  0.95  </p>
<pre><code>- Added changelog, more thourough documentation
</code></pre>

<p>  0.93  </p>
<pre><code>- Inclusion of UIButtonStrip for more flexible control of playback-pos
- Utilize "blinking" feature to display a scheduled pattern
- "follow_player" mode in Renoise will update the matrix immediately
</code></pre>

<p>  0.92  </p>
<pre><code>- Removed the destroy_app() method (not needed anymore)
- Assign tooltips to the virtual control surface
</code></pre>

<p>  0.91  </p>
<pre><code>- All mappings are now without dependancies (no more "required" groups)
</code></pre>

<p>  0.81  - First release</p>


<h2><a href="#Functions">Functions</a></h2>
<table class="function_list">
	<tr>
	<td class="name" nowrap><a href="#__init">__init (VarArg)</a></td>
	<td class="summary">Constructor method</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_update_slots">_update_slots ()</a></td>
	<td class="summary">update slots visual appeareance</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#start_app">start_app ()</a></td>
	<td class="summary">inherited from Application</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#on_idle">on_idle ()</a></td>
	<td class="summary">inherited from Application</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#on_new_document">on_new_document ()</a></td>
	<td class="summary">inherited from Application</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_check_page_change">_check_page_change ()</a></td>
	<td class="summary">check if we need to change page, but update only when following play-pos
 called when page changes and when "follow_player" is enabled</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_update_track_navigation">_update_track_navigation ()</a></td>
	<td class="summary">update track navigator,
 on new song, and when tracks have been changed</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_update_seq_navigation">_update_seq_navigation ()</a></td>
	<td class="summary">update<em>seq</em>navigation</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_has_next_seq_page">_has_next_seq_page ()</a></td>
	<td class="summary">has<em>next</em>seq_page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_has_prev_seq_page">_has_prev_seq_page ()</a></td>
	<td class="summary">has<em>prev</em>seq_page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_has_next_track_page">_has_next_track_page ()</a></td>
	<td class="summary">has<em>next</em>track_page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_has_prev_track_page">_has_prev_track_page ()</a></td>
	<td class="summary">has<em>prev</em>track_page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_update_seq_page_count">_update_seq_page_count ()</a></td>
	<td class="summary">update<em>seq</em>page_count</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_update_track_page_count">_update_track_page_count ()</a></td>
	<td class="summary">update<em>track</em>page_count</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_update_range">_update_range ()</a></td>
	<td class="summary">update range in sequence trigger</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_update_position">_update_position (idx)</a></td>
	<td class="summary">update index in sequence trigger
 called when starting/stopping playback, changing page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_retrigger_pattern">_retrigger_pattern ()</a></td>
	<td class="summary">retrigger the current pattern</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_set_trigger_mode">_set_trigger_mode ()</a></td>
	<td class="summary">set the current trigger mode, depending on options</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_get_play_page">_get_play_page ()</a></td>
	<td class="summary">get the currently playing page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_get_edit_page">_get_edit_page ()</a></td>
	<td class="summary">get the currently edited page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_follow_track">_follow_track ()</a></td>
	<td class="summary">when following the active track in Renoise, we call this method
 it will check if we are inside the current page, and update if not</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_get_track_page">_get_track_page (track_idx)</a></td>
	<td class="summary">figure out the active "track page" based on the supplied track index</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_get_track_page_width">_get_track_page_width ()</a></td>
	<td class="summary">get track page width</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_build_app">_build_app ()</a></td>
	<td class="summary">inherited from Application</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#_attach_to_song">_attach_to_song (song)</a></td>
	<td class="summary">add notifiers to relevant parts of the song</td>
	</tr>
</table>
<h2><a href="#Tables">Tables</a></h2>
<table class="function_list">
	<tr>
	<td class="name" nowrap><a href="#_loop_sequence_range">_loop_sequence_range</a></td>
	<td class="summary">(table) the loop sequence range</td>
	</tr>
</table>
<h2><a href="#Fields">Fields</a></h2>
<table class="function_list">
	<tr>
	<td class="name" nowrap><a href="#self._controls">self._controls</a></td>
	<td class="summary">(table) keep references to UI controls here</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._width">self._width</a></td>
	<td class="summary">(int) width of the matrix grid</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._height">self._height</a></td>
	<td class="summary">(int) height of the matrix grid</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._playing">self._playing</a></td>
	<td class="summary">(bool) true if currently playing</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._play_page">self._play_page</a></td>
	<td class="summary">(int) the currently playing page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._edit_page">self._edit_page</a></td>
	<td class="summary">(int) current edit page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._seq_page_count">self._seq_page_count</a></td>
	<td class="summary">(int) the total number of sequence pages</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._track_page_count">self._track_page_count</a></td>
	<td class="summary">(int) the total number of track pages</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._track_offset">self._track_offset</a></td>
	<td class="summary">(int) the current track offset</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._track_page">self._track_page</a></td>
	<td class="summary">(int) the current track page</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._scheduled_pattern">self._scheduled_pattern</a></td>
	<td class="summary">(int) scheduled sequence index</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._playback_pos">self._playback_pos</a></td>
	<td class="summary">(renoise.SongPos) current playback pos</td>
	</tr>
	<tr>
	<td class="name" nowrap><a href="#self._update_slots_requested">self._update_slots_requested</a></td>
	<td class="summary">idle flags</td>
	</tr>
</table>

<br/>
<br/>


    <h2><a name="Functions"></a>Functions</h2>
    <dl class="function">
    <dt>
    <a name = "__init"></a>
    <strong>__init (VarArg)</strong>
    </dt>
    <dd>
    Constructor method


    <h3>Parameters:</h3>
    <ul>
        <li><span class="parameter">VarArg</span>
        )
        </li>
    </ul>



    <h3>See also:</h3>
    <ul>
         <a href="../modules/Duplex.Application.html#">Duplex.Application</a>
    </ul>


</dd>
    <dt>
    <a name = "_update_slots"></a>
    <strong>_update_slots ()</strong>
    </dt>
    <dd>
    update slots visual appeareance







</dd>
    <dt>
    <a name = "start_app"></a>
    <strong>start_app ()</strong>
    </dt>
    <dd>
    inherited from Application



    <h3>Returns:</h3>
    <ol>

        bool or nil
    </ol>


    <h3>See also:</h3>
    <ul>
         <a href="../modules/Duplex.Application.html#start_app">Duplex.Application.start_app</a>
    </ul>


</dd>
    <dt>
    <a name = "on_idle"></a>
    <strong>on_idle ()</strong>
    </dt>
    <dd>
    inherited from Application





    <h3>See also:</h3>
    <ul>
         <a href="../modules/Duplex.Application.html#on_idle">Duplex.Application.on_idle</a>
    </ul>


</dd>
    <dt>
    <a name = "on_new_document"></a>
    <strong>on_new_document ()</strong>
    </dt>
    <dd>
    inherited from Application





    <h3>See also:</h3>
    <ul>
         <a href="../modules/Duplex.Application.html#on_new_document">Duplex.Application.on_new_document</a>
    </ul>


</dd>
    <dt>
    <a name = "_check_page_change"></a>
    <strong>_check_page_change ()</strong>
    </dt>
    <dd>
    check if we need to change page, but update only when following play-pos
 called when page changes and when "follow_player" is enabled







</dd>
    <dt>
    <a name = "_update_track_navigation"></a>
    <strong>_update_track_navigation ()</strong>
    </dt>
    <dd>
    update track navigator,
 on new song, and when tracks have been changed







</dd>
    <dt>
    <a name = "_update_seq_navigation"></a>
    <strong>_update_seq_navigation ()</strong>
    </dt>
    <dd>
    update<em>seq</em>navigation







</dd>
    <dt>
    <a name = "_has_next_seq_page"></a>
    <strong>_has_next_seq_page ()</strong>
    </dt>
    <dd>
    has<em>next</em>seq_page



    <h3>Returns:</h3>
    <ol>

        bool
    </ol>




</dd>
    <dt>
    <a name = "_has_prev_seq_page"></a>
    <strong>_has_prev_seq_page ()</strong>
    </dt>
    <dd>
    has<em>prev</em>seq_page



    <h3>Returns:</h3>
    <ol>

        bool
    </ol>




</dd>
    <dt>
    <a name = "_has_next_track_page"></a>
    <strong>_has_next_track_page ()</strong>
    </dt>
    <dd>
    has<em>next</em>track_page



    <h3>Returns:</h3>
    <ol>

        bool
    </ol>




</dd>
    <dt>
    <a name = "_has_prev_track_page"></a>
    <strong>_has_prev_track_page ()</strong>
    </dt>
    <dd>
    has<em>prev</em>track_page



    <h3>Returns:</h3>
    <ol>

        bool
    </ol>




</dd>
    <dt>
    <a name = "_update_seq_page_count"></a>
    <strong>_update_seq_page_count ()</strong>
    </dt>
    <dd>
    update<em>seq</em>page_count







</dd>
    <dt>
    <a name = "_update_track_page_count"></a>
    <strong>_update_track_page_count ()</strong>
    </dt>
    <dd>
    update<em>track</em>page_count







</dd>
    <dt>
    <a name = "_update_range"></a>
    <strong>_update_range ()</strong>
    </dt>
    <dd>
    update range in sequence trigger







</dd>
    <dt>
    <a name = "_update_position"></a>
    <strong>_update_position (idx)</strong>
    </dt>
    <dd>
    update index in sequence trigger
 called when starting/stopping playback, changing page


    <h3>Parameters:</h3>
    <ul>
        <li><span class="parameter">idx</span>
         (integer) the index, 0 - song-end (use current position if undefined)
        </li>
    </ul>





</dd>
    <dt>
    <a name = "_retrigger_pattern"></a>
    <strong>_retrigger_pattern ()</strong>
    </dt>
    <dd>
    retrigger the current pattern







</dd>
    <dt>
    <a name = "_set_trigger_mode"></a>
    <strong>_set_trigger_mode ()</strong>
    </dt>
    <dd>
    set the current trigger mode, depending on options







</dd>
    <dt>
    <a name = "_get_play_page"></a>
    <strong>_get_play_page ()</strong>
    </dt>
    <dd>
    get the currently playing page



    <h3>Returns:</h3>
    <ol>

        int
    </ol>




</dd>
    <dt>
    <a name = "_get_edit_page"></a>
    <strong>_get_edit_page ()</strong>
    </dt>
    <dd>
    get the currently edited page



    <h3>Returns:</h3>
    <ol>

        int
    </ol>




</dd>
    <dt>
    <a name = "_follow_track"></a>
    <strong>_follow_track ()</strong>
    </dt>
    <dd>
    when following the active track in Renoise, we call this method
 it will check if we are inside the current page, and update if not







</dd>
    <dt>
    <a name = "_get_track_page"></a>
    <strong>_get_track_page (track_idx)</strong>
    </dt>
    <dd>
    figure out the active "track page" based on the supplied track index


    <h3>Parameters:</h3>
    <ul>
        <li><span class="parameter">track_idx</span>
        , renoise track number
 return integer (0-number of pages)
        </li>
    </ul>





</dd>
    <dt>
    <a name = "_get_track_page_width"></a>
    <strong>_get_track_page_width ()</strong>
    </dt>
    <dd>
    get track page width



    <h3>Returns:</h3>
    <ol>

        int
    </ol>




</dd>
    <dt>
    <a name = "_build_app"></a>
    <strong>_build_app ()</strong>
    </dt>
    <dd>
    inherited from Application



    <h3>Returns:</h3>
    <ol>

        bool
    </ol>


    <h3>See also:</h3>
    <ul>
         <a href="../modules/Duplex.Application.html#_build_app">Duplex.Application._build_app</a>
    </ul>


</dd>
    <dt>
    <a name = "_attach_to_song"></a>
    <strong>_attach_to_song (song)</strong>
    </dt>
    <dd>
    add notifiers to relevant parts of the song


    <h3>Parameters:</h3>
    <ul>
        <li><span class="parameter">song</span>



        </li>
    </ul>





</dd>
</dl>
    <h2><a name="Tables"></a>Tables</h2>
    <dl class="function">
    <dt>
    <a name = "_loop_sequence_range"></a>
    <strong>_loop_sequence_range</strong>
    </dt>
    <dd>
    (table) the loop sequence range


    <h3>Fields:</h3>
    <ul>
        <li><span class="parameter">1</span>
         (int) begin
        </li>
        <li><span class="parameter">2</span>
         (int) end
        </li>
    </ul>





</dd>
</dl>
    <h2><a name="Fields"></a>Fields</h2>
    <dl class="function">
    <dt>
    <a name = "self._controls"></a>
    <strong>self._controls</strong>
    </dt>
    <dd>
    (table) keep references to UI controls here







</dd>
    <dt>
    <a name = "self._width"></a>
    <strong>self._width</strong>
    </dt>
    <dd>
    (int) width of the matrix grid







</dd>
    <dt>
    <a name = "self._height"></a>
    <strong>self._height</strong>
    </dt>
    <dd>
    (int) height of the matrix grid







</dd>
    <dt>
    <a name = "self._playing"></a>
    <strong>self._playing</strong>
    </dt>
    <dd>
    (bool) true if currently playing







</dd>
    <dt>
    <a name = "self._play_page"></a>
    <strong>self._play_page</strong>
    </dt>
    <dd>
    (int) the currently playing page







</dd>
    <dt>
    <a name = "self._edit_page"></a>
    <strong>self._edit_page</strong>
    </dt>
    <dd>
    (int) current edit page







</dd>
    <dt>
    <a name = "self._seq_page_count"></a>
    <strong>self._seq_page_count</strong>
    </dt>
    <dd>
    (int) the total number of sequence pages







</dd>
    <dt>
    <a name = "self._track_page_count"></a>
    <strong>self._track_page_count</strong>
    </dt>
    <dd>
    (int) the total number of track pages







</dd>
    <dt>
    <a name = "self._track_offset"></a>
    <strong>self._track_offset</strong>
    </dt>
    <dd>
    (int) the current track offset







</dd>
    <dt>
    <a name = "self._track_page"></a>
    <strong>self._track_page</strong>
    </dt>
    <dd>
    (int) the current track page







</dd>
    <dt>
    <a name = "self._scheduled_pattern"></a>
    <strong>self._scheduled_pattern</strong>
    </dt>
    <dd>
    (int) scheduled sequence index







</dd>
    <dt>
    <a name = "self._playback_pos"></a>
    <strong>self._playback_pos</strong>
    </dt>
    <dd>
    (renoise.SongPos) current playback pos







</dd>
    <dt>
    <a name = "self._update_slots_requested"></a>
    <strong>self._update_slots_requested</strong>
    </dt>
    <dd>
    idle flags







</dd>
</dl>


</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.2</a></i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>
